In ATM signaling layers, what is known as a Service Specific Connection Orientation Protocol (SSCOP) provides mechanisms for the establishment and release of connections and the reliable exchange of signalling information between signaling entities. The International Telecommunication Union-Telecommunication Standardization Sector (ITU-T) has set forth what is known as the Q.2110 standard (July 1994), incorporated herein by reference in its entirety, to specify a peer-to-peer protocol for the transfer of information and control between pairs of SSCOP entities.
With reference to FIG. 1, part of the aforementioned Q.2110 standard is a recovery action that is employed when a data message sending node or peer (i.e., sender 10) and an associated data message receiving node or peer (i.e., receiver 20) become out of synchronization with one another. That is to say, in a properly executed signaling scenario, sequential data messages are transmitted from the sender 10 to the receiver 20 in order. However, in transit the messages may get out of order, e.g., due to differing transmission delays, different routing paths, etc. When this happens a recovery action is taken to rectify the situation. In the traditional recovery action, a state is entered wherein otherwise properly received data messages are dropped with no notification to the user or other protocol layers at the receiving end. In the example shown, a finite signaling scenario is defined by the sender 10 attempting to send a series of sequenced data messages (namely, data messages having sequence numbers 1 through 8) to the receiver 20. In the usual manner, the data messages are sequentially sent from a retransmission buffer 12 on the sender side. The data messages are received on the receiver side, and under normal operating conditions, loaded in a reception buffer 22. From the reception buffer 22, the data messages are passed up to a user or other protocol layers on the receiving end.
Periodically or at otherwise designated times, poll messages are sent from the sender 10 to the receiver 20 to verify synchronization of the peers. The poll messages typically indicate the sequence number of the next data message that is to be transmitted. The receiver 20 responds to the poll messages by either indicating confirmation that the same sequence number is expected or that there is an error (i.e., that some other sequence number is expected). When an error is encountered, recovery action is immediately taken and the aforementioned state is entered whereby subsequently received data messages are dropped at the receiving end.
For example, in the particular scenario shown, data messages 1-3 are send and received in proper order. Then, a poll message is sent indicating the next data message to be sent from the sender 10 is number 4, and (being that 1-3 have already been received) the response thereto is that the receiver 20 is expecting number 4. The sender 10 then proceeds to sent in order data messages 4-6, followed by another poll message indicating number 7 is the next data message, followed by data messages 7 and 8. The receiver 20 receives data messages 4-6 in the proper order, however, for what ever reason, data message 7 is received before the corresponding poll message. Therefore, when the poll message is received (indicating the next message to be sent is number 7), the receiver 20 (having already received message number 7) is expecting message number 8. The response to the poll message therefore indicates an error and recovery action is immediately initiated such that thereafter further received data messages (namely number 8) are dropped without being sent to the user or other protocol layers at the receiving end. Consequently, data message number 8 will have to be resent. However, as can be appreciate from the present example, data message number 8 was otherwise already received once in the proper order. The resending of data messages in such instances represents a certain inefficiency associated with the traditional recovery action strategy.
The present invention contemplates a new and improved recovery action system and/or technique that overcomes the above-referenced problems and others.